package com.xuanzheng.company.dao;

import com.xuanzheng.company.entity.Task;
import java.util.List;

public interface TaskDao {
    /**
     * 创建任务
     */
    boolean createTask(Task task);
    
    /**
     * 根据ID获取任务
     */
    Task getTaskById(String id);
    
    /**
     * 获取公司的所有任务
     */
    List<Task> getTasksByCompanyId(String companyId);
    
    /**
     * 获取员工的所有任务
     */
    List<Task> getTasksByEmployeeId(String employeeId);
    
    /**
     * 获取管理者派发的所有任务
     */
    List<Task> getTasksByManagerId(String managerId);
    
    /**
     * 更新任务状态
     */
    boolean updateTaskStatus(String id, int status);
    
    /**
     * 更新任务完成时间
     */
    boolean updateTaskCompleteTime(String id, java.util.Date completeTime);
    
    /**
     * 删除任务
     */
    boolean deleteTask(String id);
    
    /**
     * 确认任务完成并评分
     */
    boolean confirmTaskCompletion(String id, int score, java.util.Date confirmTime);
    
    /**
     * 更新任务评分
     */
    boolean updateTaskScore(String id, int score);
} 